package com.itheima.dao.member;


import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.sql.Date;


/**
 * 运营数据统计页面【会员数】的相关查询
 * @Author: 杨雅雯
 * @Date: 2021/11/4 16:48
 */
public interface MemberDao {
    /**
     * 根据日期统计会员数，统计指定日期之前的会员数
     * @param regTime 日期
     * @return 返回数值
     */
    @Select("SELECT COUNT(id) FROM t_member WHERE regTime < #{regTime}")
    public Integer findMemberCountBeforeDate(@Param("regTime") Date regTime);

    /**
     * 根据日期统计会员数
     * @param regTime 日期
     * @return 返回数值
     */
    @Select("SELECT COUNT(id) FROM t_member WHERE regTime = #{regTime}")
    public Integer findMemberCountByDate(@Param("regTime")Date regTime);

    /**
     * 根据日期统计会员数，统计指定日期之后的会员数
     * @param regTime 日期
     * @return 返回数值
     */
    @Select("SELECT COUNT(id) FROM t_member WHERE regTime > #{regTime}")
    public Integer findMemberCountAfterDate(@Param("regTime")Date regTime);

    /**
     * 总会员数
     * @return 返回总会员数的数值
     */
    @Select("SELECT COUNT(id) FROM t_member")
    public Integer findMemberTotalCount();

    /**
     * 展示过去一年的会员数量
     * @param date 日期
     * @return 查询到count(id)的数量
     */
    Integer findMemberCountBeforeMonth(String date);
}
